//这里的base 不是其他glsl的父类  是 java调用的基础glsl 里面包含通用的一些数据方法。

//变量说明：
//varying变量是vertex和fragment shader之间做数据传递用的。
//一般vertex shader修改varying变量的值，然后fragment shader使用该varying变量的值。
//因此varying变量在vertex和fragment shader二者之间的声明必须是一致的。application不能使用此变量。

//uniform变量在vertex和fragment两者之间声明方式完全一样，则它可以在vertex和fragment共享使用。（相当于一个被vertex和fragment shader共享的全局变量）
//uniform变量一般用来表示：变换矩阵，材质，光照参数和颜色等信息。

//attribute变量是只能在vertex shader中使用的变量。（它不能在fragment shader中声明attribute变量，也不能被fragment shader中使用）
//一般用attribute变量来表示一些顶点的数据，如：顶点坐标，法线，纹理坐标，顶点颜色等。
//在application中，一般用函数glBindAttribLocation（）来绑定每个attribute变量的位置，然后用函数glVertexAttribPointer（）为每个attribute变量赋值。

//SurfaceTexture比较特殊
//float数据指定为mediump精度范围 该main未使用float 可以不指定
precision mediump float;

//采样点的坐标
varying vec2 aCoord;

//片元着色器中使用uniform变量对应这个纹理采样器
//采样器 不是从android的surfaceTexure中的纹理 采数据了，所以不再需要android的扩展纹理采样器了
//使用正常的 sampler2D
uniform sampler2D vTexture;

void main(){
    //变量 接收像素值
    // texture2D：采样器 采集 aCoord的像素 rgba
    gl_FragColor = texture2D(vTexture,aCoord);
    //赋值给 gl_FragColor 就可以了
//    vec4 rgba = texture2D(vTexture,aCoord);
//    gl_FragColor = vec4((rgba.r*0.3+rgba.g *0.59+rgba.b*0.11),(rgba.r*0.3+rgba.g *0.59+rgba.b*0.11),(rgba.r*0.3+rgba.g *0.59+rgba.b*0.11),rgba.a);
}